package tournoidefoot.stateful;

import java.util.Collection;

import javax.ejb.*;
import javax.persistence.*;

import tournoidefoot.modele.*;
import tournoidefoot.stateless.SoccerLocal;

/**
 * Session Bean implementation class TournoiDeFootBean
 */
@Stateful(name = "TournoiDeFootCart", mappedName = "TournoiDeFootCart")
public class TournoiDeFootBean implements TournoiDeFootLocal, TournoiDeFootRemote {


        @PersistenceContext(unitName = "monUnite")
        EntityManager em;

        @EJB
        SoccerLocal soccer;
        /**
         * Default constructor.
         */

        @Override
        public void addTournoi(String nom, int nbequipedanstournoi, Admin admin){
                soccer.addTournoi(nom, nbequipedanstournoi, admin);

        }
        @Override
        public void addArbitre(String nom, String prenom, String nomTournoi){
                soccer.addArbitre(nom, prenom, nomTournoi);
        }
       
        @Override
        public void addEquipe(String nomEquipe, String nomTournoi) {
                soccer.addEquipe(nomEquipe, nomTournoi);
               
        }

        @Override
        public void addJoueur(Equipe e, String nom, String prenom, String poste,
                        int numerodansequipe) {
                soccer.addJoueur(e, nom, prenom, poste, numerodansequipe);
        }      
               
        @Override
        public void organiserTournoi( Tournoi t){

        }
        @Override
        public void addArbitreToTournoi(Tournoi t, Arbitre a){

        }

        @Override
        public boolean authentifier (String log, String pass){
                return soccer.authentifier(log,pass);

        }

        @Override
        public boolean estTournoi(String nomTest){
                return soccer.estTournoi(nomTest);
        }
        @Override
        public void initialisation(){
                soccer.init();
        }
        @Override
        public Admin getAdmin (){
                return soccer.getAdmin();
        }
        @Override
        public Collection<String> getNomTournoi(){
                return soccer.getNomTournoi();
        }
        @Override
        public Collection<String> getNomTournoiFermer(){
                return soccer.getNomTournoiFermer();
        }
        
		@Override
		public Collection<String> getNomTournoiOuvert() {
			return soccer.getNomTournoiOuvert();
		}
		
        @Override
        public Collection<String> getNomArbitre(String nomTournoi){
                return soccer.getNomArbitre(nomTournoi);
        }
        @Override
        public Collection<String> getPrenomArbitre(String nomTournoi){
                return soccer.getPrenomArbitre(nomTournoi);
        }
        @Override
        public Collection<Equipe> donneEquipe(String nomTournoi){
                return soccer.donneEquipe(nomTournoi);
        }
        @Override
        public Equipe organiserUnMatch(String nomEquipe1,String nomEquipe2, String nomTournoi, int tour){
                return soccer.organiserUnMatch(nomEquipe1,nomEquipe2, nomTournoi,tour);
        }
        @Override
        public Collection<Equipe> donneEquipeQualifier(String nomTournoi, int tour){
                return soccer.donneEquipeQualifier(nomTournoi,  tour);
        }
        @Override
        public Collection<Joueur> donneEquipeDeJoueur(String nomequipe){
        	 return soccer.donneEquipeDeJoueur(nomequipe);
        }
        @Override
        public Equipe getEquipe(String nomequipe) {
                return soccer.getEquipe(nomequipe);
        }
        @Override
        public Collection<Arbitre> donneArbitre(String nomTournoi){
        	 return soccer.donneArbitre(nomTournoi);
        }
        @Override
    	public String donneResume(String nomEquipe1,String nomEquipe2, String nomTournoi, int tour){
        	return soccer.donneResume(nomEquipe1, nomEquipe2, nomTournoi, tour);
        }

}
